//第一步：从redux中引入createStore
//第二步：创建reducers文件夹，写reducer函数，函数接收两个参数prevStata（上一次的值）, action（动作的对象，有两个属性，一个是type值为字符串（必选属性），另一个是data值为任意数据类型（可选属性））
//第二步：引入reducer（reducer是自己写的函数），并作为createStore调用的参数
//第三步：暴露store
//第四步：再需要使用store中数据的组件中引入store，并用store.getState()方法解构出这个数据
//如果使用了这个数据的组件需要修改这个数据，则有以下步骤
//第五步：在Count组件中使用store.dispatch()给reducer中的第二个参数action设置行为类型（type）和每次行为发生后改变的值（data）
//第六步：在Reducer中 从形参action中接收到count组件传的type和data，进行swtich case比较，例如如果类型是INCREMENTCOUNT，就把prevStata(上一次的值)+data，一般会给reducer函数中的第一个参数prevStata一个初始值，这个值最好不要直接修改，浅拷贝出来再修改
//第七步：在入口文件渲染最外层组件时，需要使用store上的subscribe，监听store中数据的变化，一旦变化，就重新渲染
import {
    createStore
  } from "redux";
  import countReducer from "./reducers/countReducer"
  
  console.log("store调用了");
  
  //创建store 并提供对应的reducer
  const store = createStore(countReducer);
  
  export default store;